#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
# Copyright 2018 Joyent, Inc.
#

PROG = halt
PROG2 = reboot poweroff
OBJS= halt.o
SRCS= $(OBJS:%=%.c)

include ../Makefile.cmd
include ../Makefile.cmd.64
include ../Makefile.ctf

#
# Currently Fast Reboot is only supported on x86.
# A new propery config/uadmin_boot_archive_sync is added to
# boot-config service. Which needs a support on sparc also.
#
sparc_SUBDIRS = smf.sparc
i386_SUBDIRS = smf.i386
SUBDIRS = $($(MACH)_SUBDIRS)

ROOTLINKS = $(ROOTUSRSBIN)/poweroff.bin $(ROOTUSRSBIN)/reboot.bin
ROOTSYMLINKS= $(ROOTETC)/halt $(ROOTETC)/reboot.bin

FILEMODE = 0755

.KEEP_STATE:

CPPFLAGS += -I$(SRC)/lib/libzpool/common
CPPFLAGS += -I$(SRC)/uts/common/fs/zfs

LDLIBS += -lbsm -lscf

CLOBBERFILES += $(ROOTLINKS) $(ROOTSYMLINKS) $(PROG2)

all     :=	TARGET = all
install :=	TARGET = install
clean   :=	TARGET = clean
clobber :=	TARGET = clobber

ROOTUSRSBINPROG2=$(PROG2:%=$(ROOTUSRSBIN)/%)

all: $(PROG) $(PROG2)

$(PROG): $(OBJS)
	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
	$(POST_PROCESS)

install: all $(ROOTUSRSBINPROG) $(ROOTLINKS) $(ROOTSYMLINKS) $(SUBDIRS) $(ROOTUSRSBINPROG2)

$(ROOTLINKS): $(ROOTUSRSBINPROG)
	$(RM) $@
	$(SYMLINK) $(PROG) $@

$(ROOTSYMLINKS):
	$(RM) $@
	$(SYMLINK) ../usr/sbin/$(PROG) $@

$(SUBDIRS):	FRC
	@cd $@; pwd; $(MAKE) $(TARGET)

clean:

clobber: $(SUBDIRS)

check: $(CHKMANIFEST)

FRC:

include ../Makefile.targ
